1. Field of the Invention
The present invention relates to rotating magnetic disk drives, and more particularly, to a method for determining repeatable runout written to a servo track during a servowriting process for accurate track following relative to a concentric track center.
2. Description of the Prior Art
Repeatable runout (RRO) in a disk drive results from imperfections, with respect to a perfect circle, in the location of servo information along a track on a disk surface in the disk drive. Due to disk spindle rotation, the servo imperfections due to RRO are periodic having a fundamental frequency that is equal to the spindle rotation frequency. The RRO imperfections are relatively static over time and the effect of the RRO may be attenuated by measuring the RRO during manufacturing and using the RRO measurements in a head-position servo loop to compensate for the RRO effect.
However, accurate RRO measurements may be difficult to obtain. The head-position servo loop may not be able to track the imperfections or may prevent convergence on cancellation values in a timely and cost effective manner.
Accordingly, there exists a need for technique for determining RRO cancellation values without unnecessarily increasing manufacturing costs or significantly decreasing manufacturing throughput. The present invention satisfies these needs.
The present invention may be embodied in a method, implemented in a magnetic disk drive, for recursively determining repeatable runout (RRO) cancellation values. The disk drive has a head disk assembly (HDA) and a sampled servo controller. The HDA includes a rotating magnetic disk having distributed position information in a plurality of uniformly spaced-apart servo wedges, and an actuator for positioning a transducer head in response to a control effort signal. The transducer head periodically reads the position information from the servo wedges. The sampled servo controller periodically adjusts the control effort signal during a track-following operation based on the position information. In the method, initial resonant filter states are stored, with each initial filter state corresponding to a servo wedge of a predetermined track. The stored resonant filter states are filtered to substantially compensate for effects of the sampled servo controller, which effects tend to distort position error signals generated during track following, to generate current repeatable runout cancellation values. A current repeatable runout cancellation value is generated for each servo wedge. The position information related to the predetermined track is read during track following for a disk rotation to generate position error signals based on the read position information and the current repeatable runout cancellation values. The position error signals are scaled to generate convergence values such that a convergence value is generated for each servo wedge. Each convergence value is applied to each corresponding stored resonant filter state to generate a resulting updated resonant filter state. The updated resonant filter states are stored to replace the previously stored resonant filter states. The above steps related to filtering, reading, scaling and applying are repeated until a predetermined threshold is obtained thus recursively determining the repeatable runout correction values.
In more detailed features of the invention, the predetermined threshold may be a particular number of disk rotations, such as 20. Alternatively, the predetermined threshold may be obtained when the position error signals are less than a particular level. Further, the position error signals generated during track following for the disk rotation may be based on a difference between the read position information and the current repeatable runout cancellation values. Each resulting updated resonant filter state may be generated by combining each convergence value with the corresponding previously stored resonant filter state.
In other more detailed features of the invention, each initial filter state may be set to zero, or may be set based on reading the position information related to the predetermined track during track following for an initial disk rotation. The step of filtering the stored resonant filter states to generate the current repeatable runout cancellation values may be performed using a filter based on an inverse error rejection function for compensating effects of the sampled servo controller. The inverse error rejection function may be modified with low frequency attenuation.